package com.coursehub.progress.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;
import java.util.Map;

/**
 * 学习进度响应DTO
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ProgressResponseDto {
    
    /**
     * 用户ID
     */
    private String userId;
    
    /**
     * 课程ID
     */
    private String courseId;
    
    /**
     * 整体进度百分比
     */
    private Integer overallProgress;
    
    /**
     * 章节进度列表
     * key: 章节ID, value: 进度百分比
     */
    private Map<String, Integer> chapterProgress;
    
    /**
     * 资料进度列表
     * key: 资料ID, value: 是否完成
     */
    private Map<String, Boolean> materialProgress;
    
    /**
     * 已完成的章节ID列表
     */
    private List<String> completedChapters;
    
    /**
     * 已完成的资料ID列表
     */
    private List<String> completedMaterials;
    
    /**
     * 总章节数
     */
    private Integer totalChapters;
    
    /**
     * 总资料数
     */
    private Integer totalMaterials;
}